import scrapy
# from ScrapyShizhan.maitian.maitian.items import MaitianItem
from ..items import MaitianItem

# 爬虫类
class MaitianSpider(scrapy.Spider):
    name = "zufang"  # 爬虫的名字
    # start_urls  名字是固定的
    start_urls = ['http://bj.maitian.cn/zfall/PG2']
    def parse(self, response):
        for zufang_item in response.xpath('//div[@class="list_title"]'):
            yield {
                #  strip()  对字符串做首尾空格剪切
                'title':zufang_item.xpath('./h1/a/text()').extract_first().strip(),
                'price':zufang_item.xpath('./div[@clss="the_price/ol/strong/span/text()"]')
                    .extract_first().strip(),
                'area':zufang_item.xpath('./p/span/text()').extract_first().replace('m','').strip(),
                # 只需要提取出区的名字
                'district':zufang_item.xpath('./p[@class="house_hot"]/span/text()')
                    .extract()[1].re(r'昌平|朝阳|东城|大兴|房山|丰台|海淀|门头沟|平谷|石景山|顺义|通州|西城')
            }

        # 下一页  自己通过当前页面 的 "下一页"  去获取href属性
        next_page_url = response.xpath('//div[@id="paging"]/a[@class="down_page"]/@href').extract_first()
        if next_page_url is not None:
            # 把下一页的链接交给scrapy对象
            # 异步爬虫最重要的就是调活页的calback的这个操作
            yield scrapy.Request(response.urljoin(next_page_url))





